enum Enum_IntentType {
  UnKnown,
  GoProductList_id(rawValue: "1"),
  GoProductList_content(rawValue: "2"),
  GoProductDetail(rawValue: "3");

  final String? rawValue;

  const Enum_IntentType({this.rawValue});

  static Enum_IntentType from(dynamic rawValue) => values.firstWhere((x) => x.rawValue == rawValue, orElse: () => UnKnown);
}

enum Enum_LoginType {
  UnKnown,
  Account(rawValue: "账号登录"),
  Third(rawValue: "三方登录"),
  Verify(rawValue: "免验证码登录"),
  Code_server(rawValue: "验证码_接口"),
  Code_sdk(rawValue: "验证码_SDK");

  final String? rawValue;

  const Enum_LoginType({this.rawValue});

  static Enum_LoginType from(dynamic rawValue) => values.firstWhere((x) => x.rawValue == rawValue, orElse: () => UnKnown);
}

enum Enum_MessageType {
  UnKnown(type: null, title: "未知类型"),
  Text(type: "Text", title: "文本类型"),
  Voice(type: "Voice", title: "语音消息", ossDir: "chat_voice"),
  Image(type: "Image", title: "图片消息", ossDir: "chat_image"),
  Video(type: "Video", title: "视频消息", ossDir: "chat_video"),
  ;

  final String? type, title, ossDir;

  const Enum_MessageType({required this.type, this.title, this.ossDir});

  static Enum_MessageType from(dynamic rawValue) => values.firstWhere((x) => x.type == rawValue, orElse: () => Enum_MessageType.UnKnown);
}
